import pandas as pd

# 读取数据
df = pd.read_csv('dalian_weather_2024.csv', encoding='utf-8')

# 统计不同天气类型的数量
unique_weather_types = df['天气'].nunique()

print(f"一年内不同的天气类型数量: {unique_weather_types}")

# 如果需要查看具体的天气类型去重显示独立天气类型
unique_weather_list = df['天气'].unique()
print("一年内不同的天气类型:")
print(unique_weather_list)

#截取日期的月份去掉星期几和几号
df['日期'] = df['日期'].apply(lambda x: x[0:7])

# 使用 loc 方法更新最高气温和最低气温
for col in ['最高气温', '最低气温']:
    df[col] = df[col].str.replace('℃', '').str.strip().astype(int)

print(df)

# 获取每个月的天气最高最低气温
month_max_temp = df.groupby('日期')[['最高气温']].agg(['max'])
print(f"每个月的最高气温是:\n{month_max_temp}")
month_min_temp = df.groupby('日期')[['最低气温']].agg(['min'])
print(f"每个月的最低气温是:\n{month_min_temp}")
month_avg_temp = df.groupby('日期')[['最高气温','最低气温']].agg(['mean'])
print(f"每个月的最高最低气温的平均值是:\n{month_avg_temp}")
print('展示数据的中心趋势、分散情况和形状分布等描述性统计信息:\n',df.describe())

